//
//  NetworkUtil.h
//  NiuBanJinGold
//
//  Created by Billy on 15/9/24.
//  Copyright (c) 2015年 zzjr. All rights reserved.
//


/**
    功能: 收集整个APP访问server所需要的方法以及负责对其返回的数据的解析
            
            1. 访问方法
            2. 配套的解析方法
 
 */
typedef  void  (^transferWebData) (id parsedData,NSError *error);

#import <Foundation/Foundation.h>

@interface NetworkUtil : NSObject

+ (NetworkUtil *) sharedNetworkUtil;

- (BOOL)stateOfNetworking;
- (AFHTTPRequestOperationManager *) getManager;

/**
 *      登陆模块
 *
 */

// 登陆检测 判定当前用户是老用户还是新注册的

- (void) zzjrUserTypeCheckingByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 验证码获取

- (void) zzjrGetSMSAuthenticationCodeByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 验证码比对

- (void) zzjrSMSAuthenticationCodeComparisonByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 新用户注册

- (void) zzjrUserRegisterByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 老用户登录

- (void) zzjrUserLoginByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 老用户忘记密码

- (void)zzjrUserForgetGesturePasswordByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;


// 老用户重围密码

- (void)zzjrUserResetGesturePasswordByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;


/**
 *      加息券模块
 *
 */

// 获得加息券列表
- (void)zzjrGetTicketslistByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 使用加息券
- (void)zzjrUseTicketByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 获取可兑换加息券列表
- (void)zzjrGetExchangeTicketListByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 真正的兑换加息券
- (void)zzjrUseExchangeTicketByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 有哪些人兑换了加息券
- (void)zzjrGetTicketExchangeHistoryByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//兑换记录
- (void)zzjrscorechangedByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//加息详情
- (void)zzjrRateDetailsByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

/**
 *      牛钱包
 *
 */

// 用户资金显示
- (void)zzjrGetUserAssetsByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//实名认证
- (void)zzjrUserRealNameAuthenticationByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//绑定存入
- (void)zzjrUserIDCardBindigByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 签到
- (void)zzjrScore_usersignByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 获得的积分
- (void)zzjrScore_getgainlistbyuserByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//消费的积分
- (void)zzjrScore_getcostlistbyuserByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//所有的积分
- (void)zzjrScore_getscorebyuserByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//轮播图
- (void)zzjr_getADImagesByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//消息列表
- (void)zzjr_getUserMessageListByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

// 标记消息为 已读
- (void)zzjr_getUserMessageMarkedAsReadByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

/**
 *      我的账户
 *
 */

//存入钱后访问的server接口
- (void)zzjrNotifyServerSavingSUccessByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//用户资产列表明细，包手收益的，按type不同返回不同的值
- (void)zzjrUserAssetsListByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//支持的银行列表
- (void)zzjrBankListByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//转出(提现)
- (void)zzjrTrade_transfer_to_withdrawByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//根据省份获取市区
- (void)zzjrTrade_get_cityByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//根据城市获取县
- (void)zzjrTrade_transfer_get_countyByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//查询用户绑定的银行列表
- (void)zzjrBankQueryByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//查询用户转出费用
- (void)zzjrTradeFeeByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

//真正转出操作
- (void)zzjrTrade_real_withDrawByParmeteres:(NSDictionary *) paramsDic transferResultUsingBlock:(transferWebData) transfer;

@end
